var prefix = "/sys/subject"
	var menuIds;
$(function() {
	getMenuTreeData();
	validateRule();
});
$.validator.setDefaults({
	submitHandler : function() {
		update();
	}
});
function loadMenuTree(menuTree){
	$('#menuTree').jstree({
		'core' : {
			'data' : menuTree,
			"check_callback": true,
            'multiple': false,
		},
		"checkbox" : {
			"three_state" : false
		},
		"plugins" : [ "wholerow", "checkbox" ]
	});
	$('#menuTree').jstree('open_all');
}
function getAllSelectNodes() {
	var ref = $('#menuTree').jstree(true);// 获得整个树
	menuIds = ref.get_selected(); // 获得所有选中节点，返回值为数组
}
function getMenuTreeData() {
	var parentSubjectId = $('#parentSubjectId').val();
	$.ajax({
		type : "GET",
		url : prefix + "/tree/" + parentSubjectId,
		success : function(data) {
			loadMenuTree(data);
		}
	});
}
function update(){
	getAllSelectNodes();
	var subjectId = $('#subjectId').val();
	$('#parentSubjectId').val(menuIds);
	$('#parentSubjectId').val(menuIds);
	if(subjectId == menuIds){
	alert("不能选择自己！");
	return;
	}
	$.ajax({
		cache : true,
		type : "POST",
		url : prefix + "/updateBaseSubject",
		data : $('#signupForm').serialize(),// 你的formid
		async : false,
		error : function(request) {
			laryer.alert("Connection error");
		},
		success : function(data) {
			if (data.res == 1) {
				parent.layer.msg(data.resMsg);
				parent.reLoad();
				var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
				parent.layer.close(index);
			} else {
				layer.alert(data.resMsg)
			}
		}
	});
}
function validateRule() {
	var icon = "<i class='fa fa-times-circle'></i> ";
	$("#signupForm").validate({
		rules : {
			subjectName : {
				required : true,
				remote : {
					url : prefix+"/updateValidate", // 后台处理程序
					type : "post", // 数据发送方式
					dataType : "json", // 接受数据格式
					data : { // 要传递的数据
						parameter : function() {
							return $("#subjectName").val() + "," + $("#parentSubjectId").val() + "," + $("#subjectId").val();
						}
					}
				}
			},
			flag : {
				required : true,
			},
		},
		messages : {
			subjectName : {
				required : icon + "请输入科目名称",
				remote : icon + "该节点下已存在此科目名称"
			},
			flag : {
				required : icon + "请选择状态",
			},
		}
	})
}